From: Marco Trevisan (TreviƱo) Date: Wed, 27 Feb 2019 01:08:26 +0000 (+0100) Subject: animation: Reload sliced texture on global scale change X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~888^2^2~55 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=9e881ab6371fd57cb9cafe5597c59c2e8484b1d9;p=gnome-shell.git animation: Reload sliced texture on global scale change When the scale has changed we need to reload the texture at proper size. https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/5 --- diff --git a/js/ui/animation.js b/js/ui/animation.js index 0d711567f..c21b22565 100644 --- a/js/ui/animation.js +++ b/js/ui/animation.js @@ -18,6 +18,10 @@ var Animation = class { this.actor.connect('resource-scale-changed', this._loadFile.bind(this, file, width, height)); + let themeContext = St.ThemeContext.get_for_stage(global.stage); + this._scaleChangedId = themeContext.connect('notify::scale-factor', + this._loadFile.bind(this, file, width, height)); + this._speed = speed; this._isLoaded = false; @@ -104,6 +108,11 @@ var Animation = class { _onDestroy() { this.stop(); + + let themeContext = St.ThemeContext.get_for_stage(global.stage); + if (this._scaleChangedId) + themeContext.disconnect(this._scaleChangedId); + this._scaleChangedId = 0; } };